package com.app.diary.data;

/**
 * 用户数据源接口
 */
public interface UserDataSource {

    /**
     * 注册新用户
     *
     * @param username 用户名
     * @param email    邮箱地址
     * @param password 密码
     * @return 如果注册成功则返回 true，否则返回 false
     */
    boolean registerUser(String username, String email, String password);

    /**
     * 验证用户凭证
     *
     * @param username 用户名
     * @param password 密码
     * @return 如果凭证有效则返回 true，否则返回 false
     */
    boolean validateCredentials(String username, String password);

    /**
     * 根据用户名和密码获取用户ID
     *
     * @param username 用户名
     * @param password 密码
     * @return 如果找到用户则返回用户的 ID，否则返回 -1
     */
    long getUserIdByUsernameAndPassword(String username, String password);
}